const Router = require('@koa/router')
const {verify} = require('../utils/jwt.js')
const {findNoteListByType,findNoteDetailById,findNoteTotalByType} = require('../controllers/index.js')
const router = new Router()
router.get('/findNoteListByType', verify(), async ctx=>{
  const {note_type, page, size} = ctx.request.query
  // 新增：参数校验和默认值处理
  const currentPage = parseInt(page) || 1
  const pageSize = parseInt(size) || 10
  // 新增：边界值处理
  if (currentPage < 1) currentPage = 1
  if (pageSize < 1 || pageSize > 50) pageSize = 10

  try{
    // 修改：传递处理后的参数
    const res = await findNoteListByType(note_type, ctx.userId, currentPage, pageSize)
    // 修改：使用COUNT(*)获取总数，避免重复查询所有数据
    const totalRes = await findNoteTotalByType(note_type, ctx.userId)
    const total = totalRes[0].count

    ctx.body = {
      code: '1',
      msg: '查询成功',
      data: res,
      pagination: { total, page: currentPage, size: pageSize }
    }
  }catch(error){
    ctx.body = {
      code: '-1',
      msg: '服务器异常',
      data: error.message // 新增：返回具体错误信息便于调试
    }
  }
})
router.get('/findNoteDetailById',verify(),async ctx=>{
    const {id}=ctx.request.query
    try{
        const res=await findNoteDetailById(id)
        if(res.length){
            ctx.body={
                code:'1',
                msg:'查询成功',
                data:res[0]
            }
        }else{
            ctx.body={
                code:'1',
                msg:'暂无数据',
                data:[]
            }
        }
    }catch(error){
        ctx.body={
            code:'-1',
            msg:'服务器异常',
            data:error
        }
    }

})
module.exports=router
